MySQL

class MySQL(url: String, username: String, password: String, options: Driver.Pool.Options = Driver.Pool.Options()) : IMySQL

The MySQL class provides a driver implementation for interacting with a MySQL database. It supports connection pooling, transactional operations, and executing SQL queries.

The connection URL should follow the nex pattern, as described by MySQL.

The generic format of the connection URL: mysql:///database?properties

Parameters

url

The connection URL for the MySQL database.

username

The username for authenticating with the database.

password

The password for authenticating with the database.

options

The optional configuration for the connection pool, such as min/max connections and timeout settings.

Constructors

Link copied to clipboard
constructor(url: String, username: String, password: String, options: Driver.Pool.Options = Driver.Pool.Options())

Types

Link copied to clipboard
object Companion
Link copied to clipboard
class Tx(connection: Connection) : Transaction

Represents a transactional context for executing SQL operations with commit and rollback capabilities.

Functions

Link copied to clipboard
open suspend override fun begin(): Result<Transaction>
Link copied to clipboard
open suspend override fun close(): Result<Unit>
Link copied to clipboard
open suspend override fun execute(statement: Statement): Result<Long>
open suspend override fun execute(sql: String): <Error class: unknown class>
Link copied to clipboard
open suspend fun <T> fetchAll(sql: String, rowMapper: RowMapper<T>): Result<List<T>>
open suspend override fun fetchAll(statement: Statement): Result<ResultSet>
open suspend override fun fetchAll(sql: String): Result<ResultSet>
open suspend override fun <T> fetchAll(statement: Statement, rowMapper: RowMapper<T>): Result<List<T>>
Link copied to clipboard
open suspend override fun migrate(path: String): Result<Unit>
Link copied to clipboard
open override fun poolIdleSize(): Int
Link copied to clipboard
open override fun poolSize(): Int
Link copied to clipboard
open suspend fun <T> transaction(f: suspend Transaction.() -> T): T